<?php
App::uses('AppModel', 'Model');
class User extends AppModel {
	public $displayField = 'username';
	
	/**
	 * Validate attributes 
	 */
	public $validate = array(
		'group' => array(
			'required' => array(
				'rule' => 'notEmpty',
				'message'=> 'Nhóm chưa được chọn'
			),
		),
		'username'=> array(
			'username_must_not_be_empty'=> array(
				'rule' => 'notEmpty',
				'last' => true,
			),
			'username_must_be_unique' => array(
				'rule' => 'isUnique',
				'last' => true,
			),
		),
		'passwd' => array(
			'required' => array(
				'rule' => 'notEmpty',
				'on' => 'create',
			),
			'min' => array(
				'rule' => array('minLength', 6),
				'message' => 'Mật khẩu phải dài hơn 6 ký tự',
			),
			'match' => array(
				'rule' => 'validatePasswdConfirm',
				'message' => 'Mật khẩu xác nhận không trùng với mật khẩu đã nhập',
			)
		),
		'passwd_confirm' => array(
			'required' => array(
				'rule' => 'notEmpty',
				'on' => 'create',
			),
		),
		'email'=> array(
			'email_must_not_be_empty'=> array(
				'rule' => 'notEmpty',
				'last' => true,
			),
			'email_must_be_unique' => array(
				'rule' => 'isUnique',
				'last' => true,
			),
			'match' => array(
				'rule' => 'validatePasswdConfirm',
				'message' => 'Email xác nhận không trùng với email đã nhập',
			)
		),
		'email_confirm' => array(
			'required' => array(
				'rule' => 'notEmpty',
				'on' => 'create',
			),
		),
	);
	
	/**
	 * Database relationships
	 */

	
	/**
	 * Additional validates
	 */
	public function validatePasswdConfirm($params,$opt){
		$assoc = each($params);
		if ($this->data['User'][$assoc['key']] === $this->data['User'][$assoc['key'].'_confirm']) {
			return true;
		}
		return false;
	}
	
	
	/**
	 * Additional process before saving data
	 */
	
	
	
}